TPTP Problem File: DAT164^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : DAT164^1 : TPTP v8.2.0. Released v7.0.0.
% Domain   : Data Structures
% Problem  : Huffman 385
% Version  : [Bla16] axioms : Especial.
% English  :

% Refs     : [Bla08] Blanchette (2008), The Textbook Proof of Huffman's Alg
%          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
%          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% Source   : [Bla16]
% Names    : huffman__385.p [Bla16]

% Status   : Theorem
% Rating   : 1.00 v7.5.0, 0.33 v7.2.0, 0.50 v7.1.0
% Syntax   : Number of formulae    :  359 ( 125 unt;  51 typ;   0 def)
%            Number of atoms       :  754 ( 248 equ;   0 cnn)
%            Maximal formula atoms :    8 (   2 avg)
%            Number of connectives : 4150 (  36   ~;   4   |;  39   &;3752   @)
%                                         (   0 <=>; 319  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   18 (   7 avg)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  :  169 ( 169   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   51 (  49 usr;   2 con; 0-6 aty)
%            Number of variables   : 1005 (  40   ^; 903   !;  13   ?;1005   :)
%                                         (  49  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TH1_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2016-07-13 14:39:08.480
%------------------------------------------------------------------------------
%----Could-be-implicit typings (6)
thf(ty_t_Huffman__Mirabelle__gjololrwrm_Otree,type,
    huffma16452318e_tree: $tType > $tType ).

thf(ty_t_Sum__Type_Osum,type,
    sum_sum: $tType > $tType > $tType ).

thf(ty_t_Set_Oset,type,
    set: $tType > $tType ).

thf(ty_t_Nat_Onat,type,
    nat: $tType ).

thf(ty_t_itself,type,
    itself: $tType > $tType ).

thf(ty_tf_a,type,
    a: $tType ).

%----Explicit typings (45)
thf(sy_cl_Lattices_Obounded__lattice,type,
    bounded_lattice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_HOL_Otype,type,
    type: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Groups_Ominus,type,
    minus: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Groups_Ogroup__add,type,
    group_add: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Olattice,type,
    lattice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Ono__bot,type,
    no_bot: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Ono__top,type,
    no_top: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Finite__Set_Ofinite,type,
    finite_finite: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Olinorder,type,
    linorder: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Odistrib__lattice,type,
    distrib_lattice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Osemilattice__inf,type,
    semilattice_inf: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Osemilattice__sup,type,
    semilattice_sup: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Orderings_Odense__linorder,type,
    dense_linorder: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Obounded__lattice__bot,type,
    bounded_lattice_bot: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Obounded__lattice__top,type,
    bounded_lattice_top: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Groups_Ocancel__ab__semigroup__add,type,
    cancel146912293up_add: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Complete__Lattices_Ocomplete__lattice,type,
    comple187826305attice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Obounded__semilattice__inf__top,type,
    bounde1561333602nf_top: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Obounded__semilattice__sup__bot,type,
    bounde1808546759up_bot: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Conditionally__Complete__Lattices_Oconditionally__complete__lattice,type,
    condit378418413attice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Conditionally__Complete__Lattices_Oconditionally__complete__linorder,type,
    condit1037483654norder: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_c_Complete__Lattices_OInf__class_OInf,type,
    complete_Inf_Inf: 
      !>[A: $tType] : ( ( set @ A ) > A ) ).

thf(sy_c_Complete__Lattices_OSup__class_OSup,type,
    complete_Sup_Sup: 
      !>[A: $tType] : ( ( set @ A ) > A ) ).

thf(sy_c_Finite__Set_Ocomp__fun__commute,type,
    finite100568337ommute: 
      !>[A: $tType,B: $tType] : ( ( A > B > B ) > $o ) ).

thf(sy_c_Finite__Set_Ofinite,type,
    finite_finite2: 
      !>[A: $tType] : ( ( set @ A ) > $o ) ).

thf(sy_c_Finite__Set_Ofold,type,
    finite_fold: 
      !>[A: $tType,B: $tType] : ( ( A > B > B ) > B > ( set @ A ) > B ) ).

thf(sy_c_Finite__Set_Ofold__graph,type,
    finite_fold_graph: 
      !>[A: $tType,B: $tType] : ( ( A > B > B ) > B > ( set @ A ) > B > $o ) ).

thf(sy_c_Groups_Ominus__class_Ominus,type,
    minus_minus: 
      !>[A: $tType] : ( A > A > A ) ).

thf(sy_c_Huffman__Mirabelle__gjololrwrm_Oalphabet,type,
    huffma505251170phabet: 
      !>[A: $tType] : ( ( huffma16452318e_tree @ A ) > ( set @ A ) ) ).

thf(sy_c_Huffman__Mirabelle__gjololrwrm_Otree_OInnerNode,type,
    huffma1759677307erNode: 
      !>[A: $tType] : ( nat > ( huffma16452318e_tree @ A ) > ( huffma16452318e_tree @ A ) > ( huffma16452318e_tree @ A ) ) ).

thf(sy_c_Huffman__Mirabelle__gjololrwrm_Otree_Ocase__tree,type,
    huffma570615019e_tree: 
      !>[A: $tType,B: $tType] : ( ( nat > A > B ) > ( nat > ( huffma16452318e_tree @ A ) > ( huffma16452318e_tree @ A ) > B ) > ( huffma16452318e_tree @ A ) > B ) ).

thf(sy_c_Huffman__Mirabelle__gjololrwrm_Otree_Oset__tree,type,
    huffma778495363t_tree: 
      !>[A: $tType] : ( ( huffma16452318e_tree @ A ) > ( set @ A ) ) ).

thf(sy_c_Lattices_Oinf__class_Oinf,type,
    inf_inf: 
      !>[A: $tType] : ( A > A > A ) ).

thf(sy_c_Lattices_Osup__class_Osup,type,
    sup_sup: 
      !>[A: $tType] : ( A > A > A ) ).

thf(sy_c_Orderings_Obot__class_Obot,type,
    bot_bot: 
      !>[A: $tType] : A ).

thf(sy_c_Orderings_Oord__class_Oless__eq,type,
    ord_less_eq: 
      !>[A: $tType] : ( A > A > $o ) ).

thf(sy_c_Orderings_Otop__class_Otop,type,
    top_top: 
      !>[A: $tType] : A ).

thf(sy_c_Pure_Otype,type,
    type2: 
      !>[A: $tType] : ( itself @ A ) ).

thf(sy_c_Set_OCollect,type,
    collect: 
      !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).

thf(sy_c_Set_OPow,type,
    pow: 
      !>[A: $tType] : ( ( set @ A ) > ( set @ ( set @ A ) ) ) ).

thf(sy_c_Set_Oremove,type,
    remove: 
      !>[A: $tType] : ( A > ( set @ A ) > ( set @ A ) ) ).

thf(sy_c_Set__Interval_Oord__class_OgreaterThan,type,
    set_ord_greaterThan: 
      !>[A: $tType] : ( A > ( set @ A ) ) ).

thf(sy_c_Sum__Type_OPlus,type,
    sum_Plus: 
      !>[A: $tType,B: $tType] : ( ( set @ A ) > ( set @ B ) > ( set @ ( sum_sum @ A @ B ) ) ) ).

thf(sy_c_member,type,
    member: 
      !>[A: $tType] : ( A > ( set @ A ) > $o ) ).

thf(sy_v_t,type,
    t: huffma16452318e_tree @ a ).

%----Relevant facts (256)
thf(fact_0_finite__code,axiom,
    ! [A: $tType] :
      ( ( finite_finite @ A @ ( type2 @ A ) )
     => ( ( finite_finite2 @ A )
        = ( ^ [A2: set @ A] : $true ) ) ) ).

% finite_code
thf(fact_1_finite__set__choice,axiom,
    ! [B: $tType,A: $tType,A3: set @ A,P: A > B > $o] :
      ( ( finite_finite2 @ A @ A3 )
     => ( ! [X: A] :
            ( ( member @ A @ X @ A3 )
           => ? [X1: B] : ( P @ X @ X1 ) )
       => ? [F: A > B] :
          ! [X2: A] :
            ( ( member @ A @ X2 @ A3 )
           => ( P @ X2 @ ( F @ X2 ) ) ) ) ) ).

% finite_set_choice
thf(fact_2_finite,axiom,
    ! [A: $tType] :
      ( ( finite_finite @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] : ( finite_finite2 @ A @ A3 ) ) ).

% finite
thf(fact_3_alphabet_Osimps_I2_J,axiom,
    ! [A: $tType,W: nat,T_1: huffma16452318e_tree @ A,T_2: huffma16452318e_tree @ A] :
      ( ( huffma505251170phabet @ A @ ( huffma1759677307erNode @ A @ W @ T_1 @ T_2 ) )
      = ( sup_sup @ ( set @ A ) @ ( huffma505251170phabet @ A @ T_1 ) @ ( huffma505251170phabet @ A @ T_2 ) ) ) ).

% alphabet.simps(2)
thf(fact_4_finite__Pow__iff,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( finite_finite2 @ ( set @ A ) @ ( pow @ A @ A3 ) )
      = ( finite_finite2 @ A @ A3 ) ) ).

% finite_Pow_iff
thf(fact_5_finite__imp__fold__graph,axiom,
    ! [A: $tType,B: $tType,A3: set @ A,F2: A > B > B,Z: B] :
      ( ( finite_finite2 @ A @ A3 )
     => ? [X12: B] : ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ X12 ) ) ).

% finite_imp_fold_graph
thf(fact_6_fold__infinite,axiom,
    ! [A: $tType,B: $tType,A3: set @ A,F2: A > B > B,Z: B] :
      ( ~ ( finite_finite2 @ A @ A3 )
     => ( ( finite_fold @ A @ B @ F2 @ Z @ A3 )
        = Z ) ) ).

% fold_infinite
thf(fact_7_infinite__Ioi,axiom,
    ! [A: $tType] :
      ( ( ( linorder @ A @ ( type2 @ A ) )
        & ( no_top @ A @ ( type2 @ A ) ) )
     => ! [A4: A] :
          ~ ( finite_finite2 @ A @ ( set_ord_greaterThan @ A @ A4 ) ) ) ).

% infinite_Ioi
thf(fact_8_finite__Plus__iff,axiom,
    ! [A: $tType,B: $tType,A3: set @ A,B2: set @ B] :
      ( ( finite_finite2 @ ( sum_sum @ A @ B ) @ ( sum_Plus @ A @ B @ A3 @ B2 ) )
      = ( ( finite_finite2 @ A @ A3 )
        & ( finite_finite2 @ B @ B2 ) ) ) ).

% finite_Plus_iff
thf(fact_9_finite__Diff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( finite_finite2 @ A @ A3 )
     => ( finite_finite2 @ A @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) ) ) ).

% finite_Diff
thf(fact_10_finite__Diff2,axiom,
    ! [A: $tType,B2: set @ A,A3: set @ A] :
      ( ( finite_finite2 @ A @ B2 )
     => ( ( finite_finite2 @ A @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
        = ( finite_finite2 @ A @ A3 ) ) ) ).

% finite_Diff2
thf(fact_11_finite__Int,axiom,
    ! [A: $tType,F3: set @ A,G: set @ A] :
      ( ( ( finite_finite2 @ A @ F3 )
        | ( finite_finite2 @ A @ G ) )
     => ( finite_finite2 @ A @ ( inf_inf @ ( set @ A ) @ F3 @ G ) ) ) ).

% finite_Int
thf(fact_12_greaterThan__eq__iff,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( ( set_ord_greaterThan @ A @ X3 )
            = ( set_ord_greaterThan @ A @ Y ) )
          = ( X3 = Y ) ) ) ).

% greaterThan_eq_iff
thf(fact_13_tree_Oinject_I2_J,axiom,
    ! [A: $tType,X21: nat,X22: huffma16452318e_tree @ A,X23: huffma16452318e_tree @ A,Y21: nat,Y22: huffma16452318e_tree @ A,Y23: huffma16452318e_tree @ A] :
      ( ( ( huffma1759677307erNode @ A @ X21 @ X22 @ X23 )
        = ( huffma1759677307erNode @ A @ Y21 @ Y22 @ Y23 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 )
        & ( X23 = Y23 ) ) ) ).

% tree.inject(2)
thf(fact_14_finite__Un,axiom,
    ! [A: $tType,F3: set @ A,G: set @ A] :
      ( ( finite_finite2 @ A @ ( sup_sup @ ( set @ A ) @ F3 @ G ) )
      = ( ( finite_finite2 @ A @ F3 )
        & ( finite_finite2 @ A @ G ) ) ) ).

% finite_Un
thf(fact_15_infinite__Un,axiom,
    ! [A: $tType,S: set @ A,T: set @ A] :
      ( ( ~ ( finite_finite2 @ A @ ( sup_sup @ ( set @ A ) @ S @ T ) ) )
      = ( ~ ( finite_finite2 @ A @ S )
        | ~ ( finite_finite2 @ A @ T ) ) ) ).

% infinite_Un
thf(fact_16_Un__infinite,axiom,
    ! [A: $tType,S: set @ A,T: set @ A] :
      ( ~ ( finite_finite2 @ A @ S )
     => ~ ( finite_finite2 @ A @ ( sup_sup @ ( set @ A ) @ S @ T ) ) ) ).

% Un_infinite
thf(fact_17_finite__UnI,axiom,
    ! [A: $tType,F3: set @ A,G: set @ A] :
      ( ( finite_finite2 @ A @ F3 )
     => ( ( finite_finite2 @ A @ G )
       => ( finite_finite2 @ A @ ( sup_sup @ ( set @ A ) @ F3 @ G ) ) ) ) ).

% finite_UnI
thf(fact_18_Diff__infinite__finite,axiom,
    ! [A: $tType,T: set @ A,S: set @ A] :
      ( ( finite_finite2 @ A @ T )
     => ( ~ ( finite_finite2 @ A @ S )
       => ~ ( finite_finite2 @ A @ ( minus_minus @ ( set @ A ) @ S @ T ) ) ) ) ).

% Diff_infinite_finite
thf(fact_19_finite__Plus,axiom,
    ! [A: $tType,B: $tType,A3: set @ A,B2: set @ B] :
      ( ( finite_finite2 @ A @ A3 )
     => ( ( finite_finite2 @ B @ B2 )
       => ( finite_finite2 @ ( sum_sum @ A @ B ) @ ( sum_Plus @ A @ B @ A3 @ B2 ) ) ) ) ).

% finite_Plus
thf(fact_20_finite__PlusD_I1_J,axiom,
    ! [B: $tType,A: $tType,A3: set @ A,B2: set @ B] :
      ( ( finite_finite2 @ ( sum_sum @ A @ B ) @ ( sum_Plus @ A @ B @ A3 @ B2 ) )
     => ( finite_finite2 @ A @ A3 ) ) ).

% finite_PlusD(1)
thf(fact_21_finite__PlusD_I2_J,axiom,
    ! [A: $tType,B: $tType,A3: set @ A,B2: set @ B] :
      ( ( finite_finite2 @ ( sum_sum @ A @ B ) @ ( sum_Plus @ A @ B @ A3 @ B2 ) )
     => ( finite_finite2 @ B @ B2 ) ) ).

% finite_PlusD(2)
thf(fact_22_Pow__Int__eq,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( pow @ A @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
      = ( inf_inf @ ( set @ ( set @ A ) ) @ ( pow @ A @ A3 ) @ ( pow @ A @ B2 ) ) ) ).

% Pow_Int_eq
thf(fact_23_Un__Diff__cancel,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A3 @ ( minus_minus @ ( set @ A ) @ B2 @ A3 ) )
      = ( sup_sup @ ( set @ A ) @ A3 @ B2 ) ) ).

% Un_Diff_cancel
thf(fact_24_Un__Diff__cancel2,axiom,
    ! [A: $tType,B2: set @ A,A3: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ B2 @ A3 ) @ A3 )
      = ( sup_sup @ ( set @ A ) @ B2 @ A3 ) ) ).

% Un_Diff_cancel2
thf(fact_25_Int__Un__distrib,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ A3 @ ( sup_sup @ ( set @ A ) @ B2 @ C ) )
      = ( sup_sup @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) @ ( inf_inf @ ( set @ A ) @ A3 @ C ) ) ) ).

% Int_Un_distrib
thf(fact_26_Int__Un__distrib2,axiom,
    ! [A: $tType,B2: set @ A,C: set @ A,A3: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ B2 @ C ) @ A3 )
      = ( sup_sup @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ B2 @ A3 ) @ ( inf_inf @ ( set @ A ) @ C @ A3 ) ) ) ).

% Int_Un_distrib2
thf(fact_27_inf__sup__absorb,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( inf_inf @ A @ X3 @ ( sup_sup @ A @ X3 @ Y ) )
          = X3 ) ) ).

% inf_sup_absorb
thf(fact_28_sup__inf__absorb,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( sup_sup @ A @ X3 @ ( inf_inf @ A @ X3 @ Y ) )
          = X3 ) ) ).

% sup_inf_absorb
thf(fact_29_Diff__Un,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ ( sup_sup @ ( set @ A ) @ B2 @ C ) )
      = ( inf_inf @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) @ ( minus_minus @ ( set @ A ) @ A3 @ C ) ) ) ).

% Diff_Un
thf(fact_30_Diff__Int,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ ( inf_inf @ ( set @ A ) @ B2 @ C ) )
      = ( sup_sup @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) @ ( minus_minus @ ( set @ A ) @ A3 @ C ) ) ) ).

% Diff_Int
thf(fact_31_Un__Diff__Int,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
      = A3 ) ).

% Un_Diff_Int
thf(fact_32_DiffI,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ A3 )
     => ( ~ ( member @ A @ C2 @ B2 )
       => ( member @ A @ C2 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) ) ) ) ).

% DiffI
thf(fact_33_minus__apply,axiom,
    ! [B: $tType,A: $tType] :
      ( ( minus @ B @ ( type2 @ B ) )
     => ( ( minus_minus @ ( A > B ) )
        = ( ^ [A2: A > B,B3: A > B,X4: A] : ( minus_minus @ B @ ( A2 @ X4 ) @ ( B3 @ X4 ) ) ) ) ) ).

% minus_apply
thf(fact_34_inf__right__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( inf_inf @ A @ ( inf_inf @ A @ X3 @ Y ) @ Y )
          = ( inf_inf @ A @ X3 @ Y ) ) ) ).

% inf_right_idem
thf(fact_35_inf_Oright__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A] :
          ( ( inf_inf @ A @ ( inf_inf @ A @ A4 @ B4 ) @ B4 )
          = ( inf_inf @ A @ A4 @ B4 ) ) ) ).

% inf.right_idem
thf(fact_36_inf__left__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( inf_inf @ A @ X3 @ ( inf_inf @ A @ X3 @ Y ) )
          = ( inf_inf @ A @ X3 @ Y ) ) ) ).

% inf_left_idem
thf(fact_37_inf_Oleft__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A] :
          ( ( inf_inf @ A @ A4 @ ( inf_inf @ A @ A4 @ B4 ) )
          = ( inf_inf @ A @ A4 @ B4 ) ) ) ).

% inf.left_idem
thf(fact_38_inf__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( inf_inf @ A @ X3 @ X3 )
          = X3 ) ) ).

% inf_idem
thf(fact_39_inf_Oidem,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( inf_inf @ A @ A4 @ A4 )
          = A4 ) ) ).

% inf.idem
thf(fact_40_inf__apply,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_inf @ B @ ( type2 @ B ) )
     => ( ( inf_inf @ ( A > B ) )
        = ( ^ [F4: A > B,G2: A > B,X4: A] : ( inf_inf @ B @ ( F4 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% inf_apply
thf(fact_41_sup_Oright__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ A4 @ B4 ) @ B4 )
          = ( sup_sup @ A @ A4 @ B4 ) ) ) ).

% sup.right_idem
thf(fact_42_sup__left__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( sup_sup @ A @ X3 @ ( sup_sup @ A @ X3 @ Y ) )
          = ( sup_sup @ A @ X3 @ Y ) ) ) ).

% sup_left_idem
thf(fact_43_sup_Oleft__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A] :
          ( ( sup_sup @ A @ A4 @ ( sup_sup @ A @ A4 @ B4 ) )
          = ( sup_sup @ A @ A4 @ B4 ) ) ) ).

% sup.left_idem
thf(fact_44_sup__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( sup_sup @ A @ X3 @ X3 )
          = X3 ) ) ).

% sup_idem
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: $tType,A4: A,P: A > $o] :
      ( ( member @ A @ A4 @ ( collect @ A @ P ) )
      = ( P @ A4 ) ) ).

% mem_Collect_eq
thf(fact_46_Collect__mem__eq,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( collect @ A
        @ ^ [X4: A] : ( member @ A @ X4 @ A3 ) )
      = A3 ) ).

% Collect_mem_eq
thf(fact_47_Collect__cong,axiom,
    ! [A: $tType,P: A > $o,Q: A > $o] :
      ( ! [X: A] :
          ( ( P @ X )
          = ( Q @ X ) )
     => ( ( collect @ A @ P )
        = ( collect @ A @ Q ) ) ) ).

% Collect_cong
thf(fact_48_ext,axiom,
    ! [B: $tType,A: $tType,F2: A > B,G3: A > B] :
      ( ! [X: A] :
          ( ( F2 @ X )
          = ( G3 @ X ) )
     => ( F2 = G3 ) ) ).

% ext
thf(fact_49_sup_Oidem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( sup_sup @ A @ A4 @ A4 )
          = A4 ) ) ).

% sup.idem
thf(fact_50_sup__apply,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_sup @ B @ ( type2 @ B ) )
     => ( ( sup_sup @ ( A > B ) )
        = ( ^ [F4: A > B,G2: A > B,X4: A] : ( sup_sup @ B @ ( F4 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% sup_apply
thf(fact_51_Int__iff,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
      = ( ( member @ A @ C2 @ A3 )
        & ( member @ A @ C2 @ B2 ) ) ) ).

% Int_iff
thf(fact_52_IntI,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ A3 )
     => ( ( member @ A @ C2 @ B2 )
       => ( member @ A @ C2 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) ) ) ) ).

% IntI
thf(fact_53_Un__iff,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
      = ( ( member @ A @ C2 @ A3 )
        | ( member @ A @ C2 @ B2 ) ) ) ).

% Un_iff
thf(fact_54_UnCI,axiom,
    ! [A: $tType,C2: A,B2: set @ A,A3: set @ A] :
      ( ( ~ ( member @ A @ C2 @ B2 )
       => ( member @ A @ C2 @ A3 ) )
     => ( member @ A @ C2 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) ) ) ).

% UnCI
thf(fact_55_Diff__idemp,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) @ B2 )
      = ( minus_minus @ ( set @ A ) @ A3 @ B2 ) ) ).

% Diff_idemp
thf(fact_56_Diff__iff,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
      = ( ( member @ A @ C2 @ A3 )
        & ~ ( member @ A @ C2 @ B2 ) ) ) ).

% Diff_iff
thf(fact_57_fun__diff__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( minus @ B @ ( type2 @ B ) )
     => ( ( minus_minus @ ( A > B ) )
        = ( ^ [A2: A > B,B3: A > B,X4: A] : ( minus_minus @ B @ ( A2 @ X4 ) @ ( B3 @ X4 ) ) ) ) ) ).

% fun_diff_def
thf(fact_58_inf__left__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( inf_inf @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) )
          = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X3 @ Z ) ) ) ) ).

% inf_left_commute
thf(fact_59_inf_Oleft__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [B4: A,A4: A,C2: A] :
          ( ( inf_inf @ A @ B4 @ ( inf_inf @ A @ A4 @ C2 ) )
          = ( inf_inf @ A @ A4 @ ( inf_inf @ A @ B4 @ C2 ) ) ) ) ).

% inf.left_commute
thf(fact_60_inf__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ( ( inf_inf @ A )
        = ( ^ [X4: A,Y2: A] : ( inf_inf @ A @ Y2 @ X4 ) ) ) ) ).

% inf_commute
thf(fact_61_inf_Ocommute,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ( ( inf_inf @ A )
        = ( ^ [A5: A,B5: A] : ( inf_inf @ A @ B5 @ A5 ) ) ) ) ).

% inf.commute
thf(fact_62_inf__assoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( inf_inf @ A @ ( inf_inf @ A @ X3 @ Y ) @ Z )
          = ( inf_inf @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).

% inf_assoc
thf(fact_63_inf_Oassoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A,C2: A] :
          ( ( inf_inf @ A @ ( inf_inf @ A @ A4 @ B4 ) @ C2 )
          = ( inf_inf @ A @ A4 @ ( inf_inf @ A @ B4 @ C2 ) ) ) ) ).

% inf.assoc
thf(fact_64_inf__fun__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_inf @ B @ ( type2 @ B ) )
     => ( ( inf_inf @ ( A > B ) )
        = ( ^ [F4: A > B,G2: A > B,X4: A] : ( inf_inf @ B @ ( F4 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% inf_fun_def
thf(fact_65_inf__sup__aci_I1_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ( ( inf_inf @ A )
        = ( ^ [X4: A,Y2: A] : ( inf_inf @ A @ Y2 @ X4 ) ) ) ) ).

% inf_sup_aci(1)
thf(fact_66_inf__sup__aci_I2_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( inf_inf @ A @ ( inf_inf @ A @ X3 @ Y ) @ Z )
          = ( inf_inf @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) ) ) ) ).

% inf_sup_aci(2)
thf(fact_67_inf__sup__aci_I3_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( inf_inf @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) )
          = ( inf_inf @ A @ Y @ ( inf_inf @ A @ X3 @ Z ) ) ) ) ).

% inf_sup_aci(3)
thf(fact_68_inf__sup__aci_I4_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( inf_inf @ A @ X3 @ ( inf_inf @ A @ X3 @ Y ) )
          = ( inf_inf @ A @ X3 @ Y ) ) ) ).

% inf_sup_aci(4)
thf(fact_69_sup__left__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( sup_sup @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) )
          = ( sup_sup @ A @ Y @ ( sup_sup @ A @ X3 @ Z ) ) ) ) ).

% sup_left_commute
thf(fact_70_sup_Oleft__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [B4: A,A4: A,C2: A] :
          ( ( sup_sup @ A @ B4 @ ( sup_sup @ A @ A4 @ C2 ) )
          = ( sup_sup @ A @ A4 @ ( sup_sup @ A @ B4 @ C2 ) ) ) ) ).

% sup.left_commute
thf(fact_71_sup__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [X4: A,Y2: A] : ( sup_sup @ A @ Y2 @ X4 ) ) ) ) ).

% sup_commute
thf(fact_72_sup_Ocommute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [A5: A,B5: A] : ( sup_sup @ A @ B5 @ A5 ) ) ) ) ).

% sup.commute
thf(fact_73_sup__assoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ X3 @ Y ) @ Z )
          = ( sup_sup @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) ) ) ) ).

% sup_assoc
thf(fact_74_sup_Oassoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A,C2: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ A4 @ B4 ) @ C2 )
          = ( sup_sup @ A @ A4 @ ( sup_sup @ A @ B4 @ C2 ) ) ) ) ).

% sup.assoc
thf(fact_75_sup__fun__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_sup @ B @ ( type2 @ B ) )
     => ( ( sup_sup @ ( A > B ) )
        = ( ^ [F4: A > B,G2: A > B,X4: A] : ( sup_sup @ B @ ( F4 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% sup_fun_def
thf(fact_76_inf__sup__aci_I5_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [X4: A,Y2: A] : ( sup_sup @ A @ Y2 @ X4 ) ) ) ) ).

% inf_sup_aci(5)
thf(fact_77_inf__sup__aci_I6_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ X3 @ Y ) @ Z )
          = ( sup_sup @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) ) ) ) ).

% inf_sup_aci(6)
thf(fact_78_inf__sup__aci_I7_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( sup_sup @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) )
          = ( sup_sup @ A @ Y @ ( sup_sup @ A @ X3 @ Z ) ) ) ) ).

% inf_sup_aci(7)
thf(fact_79_inf__sup__aci_I8_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( sup_sup @ A @ X3 @ ( sup_sup @ A @ X3 @ Y ) )
          = ( sup_sup @ A @ X3 @ Y ) ) ) ).

% inf_sup_aci(8)
thf(fact_80_Int__left__commute,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ A3 @ ( inf_inf @ ( set @ A ) @ B2 @ C ) )
      = ( inf_inf @ ( set @ A ) @ B2 @ ( inf_inf @ ( set @ A ) @ A3 @ C ) ) ) ).

% Int_left_commute
thf(fact_81_Int__left__absorb,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ A3 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
      = ( inf_inf @ ( set @ A ) @ A3 @ B2 ) ) ).

% Int_left_absorb
thf(fact_82_Int__commute,axiom,
    ! [A: $tType] :
      ( ( inf_inf @ ( set @ A ) )
      = ( ^ [A2: set @ A,B3: set @ A] : ( inf_inf @ ( set @ A ) @ B3 @ A2 ) ) ) ).

% Int_commute
thf(fact_83_Int__absorb,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ A3 @ A3 )
      = A3 ) ).

% Int_absorb
thf(fact_84_Int__assoc,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( inf_inf @ ( set @ A ) @ A3 @ ( inf_inf @ ( set @ A ) @ B2 @ C ) ) ) ).

% Int_assoc
thf(fact_85_IntD2,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
     => ( member @ A @ C2 @ B2 ) ) ).

% IntD2
thf(fact_86_IntD1,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
     => ( member @ A @ C2 @ A3 ) ) ).

% IntD1
thf(fact_87_IntE,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
     => ~ ( ( member @ A @ C2 @ A3 )
         => ~ ( member @ A @ C2 @ B2 ) ) ) ).

% IntE
thf(fact_88_Un__left__commute,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A3 @ ( sup_sup @ ( set @ A ) @ B2 @ C ) )
      = ( sup_sup @ ( set @ A ) @ B2 @ ( sup_sup @ ( set @ A ) @ A3 @ C ) ) ) ).

% Un_left_commute
thf(fact_89_Un__left__absorb,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A3 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
      = ( sup_sup @ ( set @ A ) @ A3 @ B2 ) ) ).

% Un_left_absorb
thf(fact_90_Un__commute,axiom,
    ! [A: $tType] :
      ( ( sup_sup @ ( set @ A ) )
      = ( ^ [A2: set @ A,B3: set @ A] : ( sup_sup @ ( set @ A ) @ B3 @ A2 ) ) ) ).

% Un_commute
thf(fact_91_Un__absorb,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A3 @ A3 )
      = A3 ) ).

% Un_absorb
thf(fact_92_Un__assoc,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( sup_sup @ ( set @ A ) @ A3 @ ( sup_sup @ ( set @ A ) @ B2 @ C ) ) ) ).

% Un_assoc
thf(fact_93_ball__Un,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,P: A > $o] :
      ( ( ! [X4: A] :
            ( ( member @ A @ X4 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
           => ( P @ X4 ) ) )
      = ( ! [X4: A] :
            ( ( member @ A @ X4 @ A3 )
           => ( P @ X4 ) )
        & ! [X4: A] :
            ( ( member @ A @ X4 @ B2 )
           => ( P @ X4 ) ) ) ) ).

% ball_Un
thf(fact_94_bex__Un,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,P: A > $o] :
      ( ( ? [X4: A] :
            ( ( member @ A @ X4 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
            & ( P @ X4 ) ) )
      = ( ? [X4: A] :
            ( ( member @ A @ X4 @ A3 )
            & ( P @ X4 ) )
        | ? [X4: A] :
            ( ( member @ A @ X4 @ B2 )
            & ( P @ X4 ) ) ) ) ).

% bex_Un
thf(fact_95_UnI2,axiom,
    ! [A: $tType,C2: A,B2: set @ A,A3: set @ A] :
      ( ( member @ A @ C2 @ B2 )
     => ( member @ A @ C2 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) ) ) ).

% UnI2
thf(fact_96_UnI1,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ A3 )
     => ( member @ A @ C2 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) ) ) ).

% UnI1
thf(fact_97_UnE,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
     => ( ~ ( member @ A @ C2 @ A3 )
       => ( member @ A @ C2 @ B2 ) ) ) ).

% UnE
thf(fact_98_DiffD2,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
     => ~ ( member @ A @ C2 @ B2 ) ) ).

% DiffD2
thf(fact_99_DiffD1,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
     => ( member @ A @ C2 @ A3 ) ) ).

% DiffD1
thf(fact_100_DiffE,axiom,
    ! [A: $tType,C2: A,A3: set @ A,B2: set @ A] :
      ( ( member @ A @ C2 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
     => ~ ( ( member @ A @ C2 @ A3 )
         => ( member @ A @ C2 @ B2 ) ) ) ).

% DiffE
thf(fact_101_Pow__top,axiom,
    ! [A: $tType,A3: set @ A] : ( member @ ( set @ A ) @ A3 @ ( pow @ A @ A3 ) ) ).

% Pow_top
thf(fact_102_sup__inf__distrib2,axiom,
    ! [A: $tType] :
      ( ( distrib_lattice @ A @ ( type2 @ A ) )
     => ! [Y: A,Z: A,X3: A] :
          ( ( sup_sup @ A @ ( inf_inf @ A @ Y @ Z ) @ X3 )
          = ( inf_inf @ A @ ( sup_sup @ A @ Y @ X3 ) @ ( sup_sup @ A @ Z @ X3 ) ) ) ) ).

% sup_inf_distrib2
thf(fact_103_sup__inf__distrib1,axiom,
    ! [A: $tType] :
      ( ( distrib_lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( sup_sup @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) )
          = ( inf_inf @ A @ ( sup_sup @ A @ X3 @ Y ) @ ( sup_sup @ A @ X3 @ Z ) ) ) ) ).

% sup_inf_distrib1
thf(fact_104_inf__sup__distrib2,axiom,
    ! [A: $tType] :
      ( ( distrib_lattice @ A @ ( type2 @ A ) )
     => ! [Y: A,Z: A,X3: A] :
          ( ( inf_inf @ A @ ( sup_sup @ A @ Y @ Z ) @ X3 )
          = ( sup_sup @ A @ ( inf_inf @ A @ Y @ X3 ) @ ( inf_inf @ A @ Z @ X3 ) ) ) ) ).

% inf_sup_distrib2
thf(fact_105_inf__sup__distrib1,axiom,
    ! [A: $tType] :
      ( ( distrib_lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( inf_inf @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) )
          = ( sup_sup @ A @ ( inf_inf @ A @ X3 @ Y ) @ ( inf_inf @ A @ X3 @ Z ) ) ) ) ).

% inf_sup_distrib1
thf(fact_106_distrib__imp2,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ! [X: A,Y3: A,Z2: A] :
              ( ( sup_sup @ A @ X @ ( inf_inf @ A @ Y3 @ Z2 ) )
              = ( inf_inf @ A @ ( sup_sup @ A @ X @ Y3 ) @ ( sup_sup @ A @ X @ Z2 ) ) )
         => ( ( inf_inf @ A @ X3 @ ( sup_sup @ A @ Y @ Z ) )
            = ( sup_sup @ A @ ( inf_inf @ A @ X3 @ Y ) @ ( inf_inf @ A @ X3 @ Z ) ) ) ) ) ).

% distrib_imp2
thf(fact_107_distrib__imp1,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ! [X: A,Y3: A,Z2: A] :
              ( ( inf_inf @ A @ X @ ( sup_sup @ A @ Y3 @ Z2 ) )
              = ( sup_sup @ A @ ( inf_inf @ A @ X @ Y3 ) @ ( inf_inf @ A @ X @ Z2 ) ) )
         => ( ( sup_sup @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) )
            = ( inf_inf @ A @ ( sup_sup @ A @ X3 @ Y ) @ ( sup_sup @ A @ X3 @ Z ) ) ) ) ) ).

% distrib_imp1
thf(fact_108_Un__Int__distrib2,axiom,
    ! [A: $tType,B2: set @ A,C: set @ A,A3: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ B2 @ C ) @ A3 )
      = ( inf_inf @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ B2 @ A3 ) @ ( sup_sup @ ( set @ A ) @ C @ A3 ) ) ) ).

% Un_Int_distrib2
thf(fact_109_Un__Int__distrib,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A3 @ ( inf_inf @ ( set @ A ) @ B2 @ C ) )
      = ( inf_inf @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) @ ( sup_sup @ ( set @ A ) @ A3 @ C ) ) ) ).

% Un_Int_distrib
thf(fact_110_Un__Int__crazy,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) @ ( inf_inf @ ( set @ A ) @ B2 @ C ) ) @ ( inf_inf @ ( set @ A ) @ C @ A3 ) )
      = ( inf_inf @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) @ ( sup_sup @ ( set @ A ) @ B2 @ C ) ) @ ( sup_sup @ ( set @ A ) @ C @ A3 ) ) ) ).

% Un_Int_crazy
thf(fact_111_Diff__Int__distrib2,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( minus_minus @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ C ) @ ( inf_inf @ ( set @ A ) @ B2 @ C ) ) ) ).

% Diff_Int_distrib2
thf(fact_112_Diff__Int__distrib,axiom,
    ! [A: $tType,C: set @ A,A3: set @ A,B2: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ C @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
      = ( minus_minus @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ C @ A3 ) @ ( inf_inf @ ( set @ A ) @ C @ B2 ) ) ) ).

% Diff_Int_distrib
thf(fact_113_Diff__Diff__Int,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ ( minus_minus @ ( set @ A ) @ A3 @ B2 ) )
      = ( inf_inf @ ( set @ A ) @ A3 @ B2 ) ) ).

% Diff_Diff_Int
thf(fact_114_Diff__Int2,axiom,
    ! [A: $tType,A3: set @ A,C: set @ A,B2: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ C ) @ ( inf_inf @ ( set @ A ) @ B2 @ C ) )
      = ( minus_minus @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ C ) @ B2 ) ) ).

% Diff_Int2
thf(fact_115_Int__Diff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( inf_inf @ ( set @ A ) @ A3 @ ( minus_minus @ ( set @ A ) @ B2 @ C ) ) ) ).

% Int_Diff
thf(fact_116_Un__Diff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( sup_sup @ ( set @ A ) @ ( minus_minus @ ( set @ A ) @ A3 @ C ) @ ( minus_minus @ ( set @ A ) @ B2 @ C ) ) ) ).

% Un_Diff
thf(fact_117_minus__fold__remove,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( finite_finite2 @ A @ A3 )
     => ( ( minus_minus @ ( set @ A ) @ B2 @ A3 )
        = ( finite_fold @ A @ ( set @ A ) @ ( remove @ A ) @ B2 @ A3 ) ) ) ).

% minus_fold_remove
thf(fact_118_comp__fun__commute_Ofold__graph__fold,axiom,
    ! [B: $tType,A: $tType,F2: A > B > B,A3: set @ A,Z: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_finite2 @ A @ A3 )
       => ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ ( finite_fold @ A @ B @ F2 @ Z @ A3 ) ) ) ) ).

% comp_fun_commute.fold_graph_fold
thf(fact_119_diff__right__commute,axiom,
    ! [A: $tType] :
      ( ( cancel146912293up_add @ A @ ( type2 @ A ) )
     => ! [A4: A,C2: A,B4: A] :
          ( ( minus_minus @ A @ ( minus_minus @ A @ A4 @ C2 ) @ B4 )
          = ( minus_minus @ A @ ( minus_minus @ A @ A4 @ B4 ) @ C2 ) ) ) ).

% diff_right_commute
thf(fact_120_diff__eq__diff__eq,axiom,
    ! [A: $tType] :
      ( ( group_add @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A,C2: A,D: A] :
          ( ( ( minus_minus @ A @ A4 @ B4 )
            = ( minus_minus @ A @ C2 @ D ) )
         => ( ( A4 = B4 )
            = ( C2 = D ) ) ) ) ).

% diff_eq_diff_eq
thf(fact_121_sup__Sup__fold__sup,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: A] :
          ( ( finite_finite2 @ A @ A3 )
         => ( ( sup_sup @ A @ ( complete_Sup_Sup @ A @ A3 ) @ B2 )
            = ( finite_fold @ A @ A @ ( sup_sup @ A ) @ B2 @ A3 ) ) ) ) ).

% sup_Sup_fold_sup
thf(fact_122_inf__Inf__fold__inf,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: A] :
          ( ( finite_finite2 @ A @ A3 )
         => ( ( inf_inf @ A @ ( complete_Inf_Inf @ A @ A3 ) @ B2 )
            = ( finite_fold @ A @ A @ ( inf_inf @ A ) @ B2 @ A3 ) ) ) ) ).

% inf_Inf_fold_inf
thf(fact_123_comp__fun__commute_Ofold__equality,axiom,
    ! [A: $tType,B: $tType,F2: A > B > B,Z: B,A3: set @ A,Y: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ Y )
       => ( ( finite_fold @ A @ B @ F2 @ Z @ A3 )
          = Y ) ) ) ).

% comp_fun_commute.fold_equality
thf(fact_124_tree_Osimps_I6_J,axiom,
    ! [B: $tType,A: $tType,F1: nat > A > B,F22: nat > ( huffma16452318e_tree @ A ) > ( huffma16452318e_tree @ A ) > B,X21: nat,X22: huffma16452318e_tree @ A,X23: huffma16452318e_tree @ A] :
      ( ( huffma570615019e_tree @ A @ B @ F1 @ F22 @ ( huffma1759677307erNode @ A @ X21 @ X22 @ X23 ) )
      = ( F22 @ X21 @ X22 @ X23 ) ) ).

% tree.simps(6)
thf(fact_125_tree_Osimps_I16_J,axiom,
    ! [A: $tType,X21: nat,X22: huffma16452318e_tree @ A,X23: huffma16452318e_tree @ A] :
      ( ( huffma778495363t_tree @ A @ ( huffma1759677307erNode @ A @ X21 @ X22 @ X23 ) )
      = ( sup_sup @ ( set @ A ) @ ( huffma778495363t_tree @ A @ X22 ) @ ( huffma778495363t_tree @ A @ X23 ) ) ) ).

% tree.simps(16)
thf(fact_126_finite__Inter,axiom,
    ! [A: $tType,M: set @ ( set @ A )] :
      ( ? [X2: set @ A] :
          ( ( member @ ( set @ A ) @ X2 @ M )
          & ( finite_finite2 @ A @ X2 ) )
     => ( finite_finite2 @ A @ ( complete_Inf_Inf @ ( set @ A ) @ M ) ) ) ).

% finite_Inter
thf(fact_127_member__remove,axiom,
    ! [A: $tType,X3: A,Y: A,A3: set @ A] :
      ( ( member @ A @ X3 @ ( remove @ A @ Y @ A3 ) )
      = ( ( member @ A @ X3 @ A3 )
        & ( X3 != Y ) ) ) ).

% member_remove
thf(fact_128_Inf__greaterThan,axiom,
    ! [A: $tType] :
      ( ( ( comple187826305attice @ A @ ( type2 @ A ) )
        & ( dense_linorder @ A @ ( type2 @ A ) ) )
     => ! [X3: A] :
          ( ( complete_Inf_Inf @ A @ ( set_ord_greaterThan @ A @ X3 ) )
          = X3 ) ) ).

% Inf_greaterThan
thf(fact_129_finite__Union,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( finite_finite2 @ ( set @ A ) @ A3 )
     => ( ! [M2: set @ A] :
            ( ( member @ ( set @ A ) @ M2 @ A3 )
           => ( finite_finite2 @ A @ M2 ) )
       => ( finite_finite2 @ A @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) ) ) ) ).

% finite_Union
thf(fact_130_comp__fun__commute_Ofun__left__comm,axiom,
    ! [A: $tType,B: $tType,F2: A > B > B,Y: A,X3: A,Z: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( F2 @ Y @ ( F2 @ X3 @ Z ) )
        = ( F2 @ X3 @ ( F2 @ Y @ Z ) ) ) ) ).

% comp_fun_commute.fun_left_comm
thf(fact_131_comp__fun__commute_Ofold__graph__determ,axiom,
    ! [A: $tType,B: $tType,F2: A > B > B,Z: B,A3: set @ A,X3: B,Y: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ X3 )
       => ( ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ Y )
         => ( Y = X3 ) ) ) ) ).

% comp_fun_commute.fold_graph_determ
thf(fact_132_tree_Oset__intros_I3_J,axiom,
    ! [A: $tType,Xa: A,A32: huffma16452318e_tree @ A,A1a: nat,A2a: huffma16452318e_tree @ A] :
      ( ( member @ A @ Xa @ ( huffma778495363t_tree @ A @ A32 ) )
     => ( member @ A @ Xa @ ( huffma778495363t_tree @ A @ ( huffma1759677307erNode @ A @ A1a @ A2a @ A32 ) ) ) ) ).

% tree.set_intros(3)
thf(fact_133_tree_Oset__intros_I2_J,axiom,
    ! [A: $tType,X3: A,A2a: huffma16452318e_tree @ A,A1a: nat,A32: huffma16452318e_tree @ A] :
      ( ( member @ A @ X3 @ ( huffma778495363t_tree @ A @ A2a ) )
     => ( member @ A @ X3 @ ( huffma778495363t_tree @ A @ ( huffma1759677307erNode @ A @ A1a @ A2a @ A32 ) ) ) ) ).

% tree.set_intros(2)
thf(fact_134_finite__UnionD,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( finite_finite2 @ A @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) )
     => ( finite_finite2 @ ( set @ A ) @ A3 ) ) ).

% finite_UnionD
thf(fact_135_Finite__Set_Ofold__cong,axiom,
    ! [B: $tType,A: $tType,F2: A > B > B,G3: A > B > B,A3: set @ A,S2: B,T2: B,B2: set @ A] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite100568337ommute @ A @ B @ G3 )
       => ( ( finite_finite2 @ A @ A3 )
         => ( ! [X: A] :
                ( ( member @ A @ X @ A3 )
               => ( ( F2 @ X )
                  = ( G3 @ X ) ) )
           => ( ( S2 = T2 )
             => ( ( A3 = B2 )
               => ( ( finite_fold @ A @ B @ F2 @ S2 @ A3 )
                  = ( finite_fold @ A @ B @ G3 @ T2 @ B2 ) ) ) ) ) ) ) ) ).

% Finite_Set.fold_cong
thf(fact_136_comp__fun__commute_Ofold__fun__left__comm,axiom,
    ! [B: $tType,A: $tType,F2: A > B > B,A3: set @ A,X3: A,Z: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_finite2 @ A @ A3 )
       => ( ( F2 @ X3 @ ( finite_fold @ A @ B @ F2 @ Z @ A3 ) )
          = ( finite_fold @ A @ B @ F2 @ ( F2 @ X3 @ Z ) @ A3 ) ) ) ) ).

% comp_fun_commute.fold_fun_left_comm
thf(fact_137_comp__fun__commute_Ofold__graph__finite,axiom,
    ! [B: $tType,A: $tType,F2: A > B > B,Z: B,A3: set @ A,Y: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_fold_graph @ A @ B @ F2 @ Z @ A3 @ Y )
       => ( finite_finite2 @ A @ A3 ) ) ) ).

% comp_fun_commute.fold_graph_finite
thf(fact_138_cInf__greaterThan,axiom,
    ! [A: $tType] :
      ( ( ( condit1037483654norder @ A @ ( type2 @ A ) )
        & ( dense_linorder @ A @ ( type2 @ A ) )
        & ( no_top @ A @ ( type2 @ A ) ) )
     => ! [X3: A] :
          ( ( complete_Inf_Inf @ A @ ( set_ord_greaterThan @ A @ X3 ) )
          = X3 ) ) ).

% cInf_greaterThan
thf(fact_139_Inf__union__distrib,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: set @ A] :
          ( ( complete_Inf_Inf @ A @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
          = ( inf_inf @ A @ ( complete_Inf_Inf @ A @ A3 ) @ ( complete_Inf_Inf @ A @ B2 ) ) ) ) ).

% Inf_union_distrib
thf(fact_140_Sup__union__distrib,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: set @ A] :
          ( ( complete_Sup_Sup @ A @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
          = ( sup_sup @ A @ ( complete_Sup_Sup @ A @ A3 ) @ ( complete_Sup_Sup @ A @ B2 ) ) ) ) ).

% Sup_union_distrib
thf(fact_141_Union__Pow__eq,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( complete_Sup_Sup @ ( set @ A ) @ ( pow @ A @ A3 ) )
      = A3 ) ).

% Union_Pow_eq
thf(fact_142_UN__ball__bex__simps_I3_J,axiom,
    ! [D2: $tType,A3: set @ ( set @ D2 ),P: D2 > $o] :
      ( ( ? [X4: D2] :
            ( ( member @ D2 @ X4 @ ( complete_Sup_Sup @ ( set @ D2 ) @ A3 ) )
            & ( P @ X4 ) ) )
      = ( ? [X4: set @ D2] :
            ( ( member @ ( set @ D2 ) @ X4 @ A3 )
            & ? [Y2: D2] :
                ( ( member @ D2 @ Y2 @ X4 )
                & ( P @ Y2 ) ) ) ) ) ).

% UN_ball_bex_simps(3)
thf(fact_143_UN__ball__bex__simps_I1_J,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),P: A > $o] :
      ( ( ! [X4: A] :
            ( ( member @ A @ X4 @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) )
           => ( P @ X4 ) ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A3 )
           => ! [Y2: A] :
                ( ( member @ A @ Y2 @ X4 )
               => ( P @ Y2 ) ) ) ) ) ).

% UN_ball_bex_simps(1)
thf(fact_144_UnionI,axiom,
    ! [A: $tType,X5: set @ A,C: set @ ( set @ A ),A3: A] :
      ( ( member @ ( set @ A ) @ X5 @ C )
     => ( ( member @ A @ A3 @ X5 )
       => ( member @ A @ A3 @ ( complete_Sup_Sup @ ( set @ A ) @ C ) ) ) ) ).

% UnionI
thf(fact_145_Union__iff,axiom,
    ! [A: $tType,A3: A,C: set @ ( set @ A )] :
      ( ( member @ A @ A3 @ ( complete_Sup_Sup @ ( set @ A ) @ C ) )
      = ( ? [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ C )
            & ( member @ A @ A3 @ X4 ) ) ) ) ).

% Union_iff
thf(fact_146_InterI,axiom,
    ! [A: $tType,C: set @ ( set @ A ),A3: A] :
      ( ! [X6: set @ A] :
          ( ( member @ ( set @ A ) @ X6 @ C )
         => ( member @ A @ A3 @ X6 ) )
     => ( member @ A @ A3 @ ( complete_Inf_Inf @ ( set @ A ) @ C ) ) ) ).

% InterI
thf(fact_147_Inter__iff,axiom,
    ! [A: $tType,A3: A,C: set @ ( set @ A )] :
      ( ( member @ A @ A3 @ ( complete_Inf_Inf @ ( set @ A ) @ C ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ C )
           => ( member @ A @ A3 @ X4 ) ) ) ) ).

% Inter_iff
thf(fact_148_Union__Un__distrib,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),B2: set @ ( set @ A )] :
      ( ( complete_Sup_Sup @ ( set @ A ) @ ( sup_sup @ ( set @ ( set @ A ) ) @ A3 @ B2 ) )
      = ( sup_sup @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) @ ( complete_Sup_Sup @ ( set @ A ) @ B2 ) ) ) ).

% Union_Un_distrib
thf(fact_149_InterD,axiom,
    ! [A: $tType,A3: A,C: set @ ( set @ A ),X5: set @ A] :
      ( ( member @ A @ A3 @ ( complete_Inf_Inf @ ( set @ A ) @ C ) )
     => ( ( member @ ( set @ A ) @ X5 @ C )
       => ( member @ A @ A3 @ X5 ) ) ) ).

% InterD
thf(fact_150_InterE,axiom,
    ! [A: $tType,A3: A,C: set @ ( set @ A ),X5: set @ A] :
      ( ( member @ A @ A3 @ ( complete_Inf_Inf @ ( set @ A ) @ C ) )
     => ( ( member @ ( set @ A ) @ X5 @ C )
       => ( member @ A @ A3 @ X5 ) ) ) ).

% InterE
thf(fact_151_UnionE,axiom,
    ! [A: $tType,A3: A,C: set @ ( set @ A )] :
      ( ( member @ A @ A3 @ ( complete_Sup_Sup @ ( set @ A ) @ C ) )
     => ~ ! [X6: set @ A] :
            ( ( member @ A @ A3 @ X6 )
           => ~ ( member @ ( set @ A ) @ X6 @ C ) ) ) ).

% UnionE
thf(fact_152_Inter__Un__distrib,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),B2: set @ ( set @ A )] :
      ( ( complete_Inf_Inf @ ( set @ A ) @ ( sup_sup @ ( set @ ( set @ A ) ) @ A3 @ B2 ) )
      = ( inf_inf @ ( set @ A ) @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) @ ( complete_Inf_Inf @ ( set @ A ) @ B2 ) ) ) ).

% Inter_Un_distrib
thf(fact_153_comp__fun__commute_Ofold__set__union__disj,axiom,
    ! [B: $tType,A: $tType,F2: A > B > B,A3: set @ A,B2: set @ A,Z: B] :
      ( ( finite100568337ommute @ A @ B @ F2 )
     => ( ( finite_finite2 @ A @ A3 )
       => ( ( finite_finite2 @ A @ B2 )
         => ( ( ( inf_inf @ ( set @ A ) @ A3 @ B2 )
              = ( bot_bot @ ( set @ A ) ) )
           => ( ( finite_fold @ A @ B @ F2 @ Z @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) )
              = ( finite_fold @ A @ B @ F2 @ ( finite_fold @ A @ B @ F2 @ Z @ A3 ) @ B2 ) ) ) ) ) ) ).

% comp_fun_commute.fold_set_union_disj
thf(fact_154_Inf__fold__inf,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( finite_finite2 @ A @ A3 )
         => ( ( complete_Inf_Inf @ A @ A3 )
            = ( finite_fold @ A @ A @ ( inf_inf @ A ) @ ( top_top @ A ) @ A3 ) ) ) ) ).

% Inf_fold_inf
thf(fact_155_Sup__fold__sup,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( finite_finite2 @ A @ A3 )
         => ( ( complete_Sup_Sup @ A @ A3 )
            = ( finite_fold @ A @ A @ ( sup_sup @ A ) @ ( bot_bot @ A ) @ A3 ) ) ) ) ).

% Sup_fold_sup
thf(fact_156_Inter__Un__subset,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),B2: set @ ( set @ A )] : ( ord_less_eq @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) @ ( complete_Inf_Inf @ ( set @ A ) @ B2 ) ) @ ( complete_Inf_Inf @ ( set @ A ) @ ( inf_inf @ ( set @ ( set @ A ) ) @ A3 @ B2 ) ) ) ).

% Inter_Un_subset
thf(fact_157_empty__Collect__eq,axiom,
    ! [A: $tType,P: A > $o] :
      ( ( ( bot_bot @ ( set @ A ) )
        = ( collect @ A @ P ) )
      = ( ! [X4: A] :
            ~ ( P @ X4 ) ) ) ).

% empty_Collect_eq
thf(fact_158_Collect__empty__eq,axiom,
    ! [A: $tType,P: A > $o] :
      ( ( ( collect @ A @ P )
        = ( bot_bot @ ( set @ A ) ) )
      = ( ! [X4: A] :
            ~ ( P @ X4 ) ) ) ).

% Collect_empty_eq
thf(fact_159_all__not__in__conv,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( ! [X4: A] :
            ~ ( member @ A @ X4 @ A3 ) )
      = ( A3
        = ( bot_bot @ ( set @ A ) ) ) ) ).

% all_not_in_conv
thf(fact_160_empty__iff,axiom,
    ! [A: $tType,C2: A] :
      ~ ( member @ A @ C2 @ ( bot_bot @ ( set @ A ) ) ) ).

% empty_iff
thf(fact_161_subset__antisym,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
     => ( ( ord_less_eq @ ( set @ A ) @ B2 @ A3 )
       => ( A3 = B2 ) ) ) ).

% subset_antisym
thf(fact_162_subsetI,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ! [X: A] :
          ( ( member @ A @ X @ A3 )
         => ( member @ A @ X @ B2 ) )
     => ( ord_less_eq @ ( set @ A ) @ A3 @ B2 ) ) ).

% subsetI
thf(fact_163_Int__UNIV,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ( inf_inf @ ( set @ A ) @ A3 @ B2 )
        = ( top_top @ ( set @ A ) ) )
      = ( ( A3
          = ( top_top @ ( set @ A ) ) )
        & ( B2
          = ( top_top @ ( set @ A ) ) ) ) ) ).

% Int_UNIV
thf(fact_164_Inter__UNIV__conv_I2_J,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( ( top_top @ ( set @ A ) )
        = ( complete_Inf_Inf @ ( set @ A ) @ A3 ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A3 )
           => ( X4
              = ( top_top @ ( set @ A ) ) ) ) ) ) ).

% Inter_UNIV_conv(2)
thf(fact_165_Inter__UNIV__conv_I1_J,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( ( complete_Inf_Inf @ ( set @ A ) @ A3 )
        = ( top_top @ ( set @ A ) ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A3 )
           => ( X4
              = ( top_top @ ( set @ A ) ) ) ) ) ) ).

% Inter_UNIV_conv(1)
thf(fact_166_Pow__UNIV,axiom,
    ! [A: $tType] :
      ( ( pow @ A @ ( top_top @ ( set @ A ) ) )
      = ( top_top @ ( set @ ( set @ A ) ) ) ) ).

% Pow_UNIV
thf(fact_167_inf_Obounded__iff,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [A4: A,B4: A,C2: A] :
          ( ( ord_less_eq @ A @ A4 @ ( inf_inf @ A @ B4 @ C2 ) )
          = ( ( ord_less_eq @ A @ A4 @ B4 )
            & ( ord_less_eq @ A @ A4 @ C2 ) ) ) ) ).

% inf.bounded_iff
thf(fact_168_le__inf__iff,axiom,
    ! [A: $tType] :
      ( ( semilattice_inf @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( ord_less_eq @ A @ X3 @ ( inf_inf @ A @ Y @ Z ) )
          = ( ( ord_less_eq @ A @ X3 @ Y )
            & ( ord_less_eq @ A @ X3 @ Z ) ) ) ) ).

% le_inf_iff
thf(fact_169_sup_Obounded__iff,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [B4: A,C2: A,A4: A] :
          ( ( ord_less_eq @ A @ ( sup_sup @ A @ B4 @ C2 ) @ A4 )
          = ( ( ord_less_eq @ A @ B4 @ A4 )
            & ( ord_less_eq @ A @ C2 @ A4 ) ) ) ) ).

% sup.bounded_iff
thf(fact_170_le__sup__iff,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A,Z: A] :
          ( ( ord_less_eq @ A @ ( sup_sup @ A @ X3 @ Y ) @ Z )
          = ( ( ord_less_eq @ A @ X3 @ Z )
            & ( ord_less_eq @ A @ Y @ Z ) ) ) ) ).

% le_sup_iff
thf(fact_171_inf__bot__right,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_bot @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( inf_inf @ A @ X3 @ ( bot_bot @ A ) )
          = ( bot_bot @ A ) ) ) ).

% inf_bot_right
thf(fact_172_inf__bot__left,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_bot @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( inf_inf @ A @ ( bot_bot @ A ) @ X3 )
          = ( bot_bot @ A ) ) ) ).

% inf_bot_left
thf(fact_173_sup__bot_Oright__neutral,axiom,
    ! [A: $tType] :
      ( ( bounde1808546759up_bot @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( sup_sup @ A @ A4 @ ( bot_bot @ A ) )
          = A4 ) ) ).

% sup_bot.right_neutral
thf(fact_174_sup__bot_Oleft__neutral,axiom,
    ! [A: $tType] :
      ( ( bounde1808546759up_bot @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( sup_sup @ A @ ( bot_bot @ A ) @ A4 )
          = A4 ) ) ).

% sup_bot.left_neutral
thf(fact_175_sup__eq__bot__iff,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_bot @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( ( sup_sup @ A @ X3 @ Y )
            = ( bot_bot @ A ) )
          = ( ( X3
              = ( bot_bot @ A ) )
            & ( Y
              = ( bot_bot @ A ) ) ) ) ) ).

% sup_eq_bot_iff
thf(fact_176_bot__eq__sup__iff,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_bot @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( ( bot_bot @ A )
            = ( sup_sup @ A @ X3 @ Y ) )
          = ( ( X3
              = ( bot_bot @ A ) )
            & ( Y
              = ( bot_bot @ A ) ) ) ) ) ).

% bot_eq_sup_iff
thf(fact_177_empty__subsetI,axiom,
    ! [A: $tType,A3: set @ A] : ( ord_less_eq @ ( set @ A ) @ ( bot_bot @ ( set @ A ) ) @ A3 ) ).

% empty_subsetI
thf(fact_178_subset__empty,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ ( bot_bot @ ( set @ A ) ) )
      = ( A3
        = ( bot_bot @ ( set @ A ) ) ) ) ).

% subset_empty
thf(fact_179_Sup__bot__conv_I2_J,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( ( bot_bot @ A )
            = ( complete_Sup_Sup @ A @ A3 ) )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( X4
                  = ( bot_bot @ A ) ) ) ) ) ) ).

% Sup_bot_conv(2)
thf(fact_180_Sup__bot__conv_I1_J,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( ( complete_Sup_Sup @ A @ A3 )
            = ( bot_bot @ A ) )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( X4
                  = ( bot_bot @ A ) ) ) ) ) ) ).

% Sup_bot_conv(1)
thf(fact_181_inf__top_Oright__neutral,axiom,
    ! [A: $tType] :
      ( ( bounde1561333602nf_top @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( inf_inf @ A @ A4 @ ( top_top @ A ) )
          = A4 ) ) ).

% inf_top.right_neutral
thf(fact_182_inf__top_Oleft__neutral,axiom,
    ! [A: $tType] :
      ( ( bounde1561333602nf_top @ A @ ( type2 @ A ) )
     => ! [A4: A] :
          ( ( inf_inf @ A @ ( top_top @ A ) @ A4 )
          = A4 ) ) ).

% inf_top.left_neutral
thf(fact_183_inf__eq__top__iff,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_top @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( ( inf_inf @ A @ X3 @ Y )
            = ( top_top @ A ) )
          = ( ( X3
              = ( top_top @ A ) )
            & ( Y
              = ( top_top @ A ) ) ) ) ) ).

% inf_eq_top_iff
thf(fact_184_sup__top__right,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_top @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( sup_sup @ A @ X3 @ ( top_top @ A ) )
          = ( top_top @ A ) ) ) ).

% sup_top_right
thf(fact_185_sup__top__left,axiom,
    ! [A: $tType] :
      ( ( bounded_lattice_top @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( sup_sup @ A @ ( top_top @ A ) @ X3 )
          = ( top_top @ A ) ) ) ).

% sup_top_left
thf(fact_186_Inf__UNIV,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ( ( complete_Inf_Inf @ A @ ( top_top @ ( set @ A ) ) )
        = ( bot_bot @ A ) ) ) ).

% Inf_UNIV
thf(fact_187_Sup__UNIV,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ( ( complete_Sup_Sup @ A @ ( top_top @ ( set @ A ) ) )
        = ( top_top @ A ) ) ) ).

% Sup_UNIV
thf(fact_188_Un__empty,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ( sup_sup @ ( set @ A ) @ A3 @ B2 )
        = ( bot_bot @ ( set @ A ) ) )
      = ( ( A3
          = ( bot_bot @ ( set @ A ) ) )
        & ( B2
          = ( bot_bot @ ( set @ A ) ) ) ) ) ).

% Un_empty
thf(fact_189_Diff__cancel,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ A3 )
      = ( bot_bot @ ( set @ A ) ) ) ).

% Diff_cancel
thf(fact_190_empty__Diff,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ ( bot_bot @ ( set @ A ) ) @ A3 )
      = ( bot_bot @ ( set @ A ) ) ) ).

% empty_Diff
thf(fact_191_Diff__empty,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ ( bot_bot @ ( set @ A ) ) )
      = A3 ) ).

% Diff_empty
thf(fact_192_Diff__UNIV,axiom,
    ! [A: $tType,A3: set @ A] :
      ( ( minus_minus @ ( set @ A ) @ A3 @ ( top_top @ ( set @ A ) ) )
      = ( bot_bot @ ( set @ A ) ) ) ).

% Diff_UNIV
thf(fact_193_Int__subset__iff,axiom,
    ! [A: $tType,C: set @ A,A3: set @ A,B2: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ C @ ( inf_inf @ ( set @ A ) @ A3 @ B2 ) )
      = ( ( ord_less_eq @ ( set @ A ) @ C @ A3 )
        & ( ord_less_eq @ ( set @ A ) @ C @ B2 ) ) ) ).

% Int_subset_iff
thf(fact_194_Inf__top__conv_I2_J,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( ( top_top @ A )
            = ( complete_Inf_Inf @ A @ A3 ) )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( X4
                  = ( top_top @ A ) ) ) ) ) ) ).

% Inf_top_conv(2)
thf(fact_195_Inf__top__conv_I1_J,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( ( complete_Inf_Inf @ A @ A3 )
            = ( top_top @ A ) )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( X4
                  = ( top_top @ A ) ) ) ) ) ) ).

% Inf_top_conv(1)
thf(fact_196_Un__subset__iff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A3 @ B2 ) @ C )
      = ( ( ord_less_eq @ ( set @ A ) @ A3 @ C )
        & ( ord_less_eq @ ( set @ A ) @ B2 @ C ) ) ) ).

% Un_subset_iff
thf(fact_197_fold__empty,axiom,
    ! [B: $tType,A: $tType,F2: B > A > A,Z: A] :
      ( ( finite_fold @ B @ A @ F2 @ Z @ ( bot_bot @ ( set @ B ) ) )
      = Z ) ).

% fold_empty
thf(fact_198_PowI,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
     => ( member @ ( set @ A ) @ A3 @ ( pow @ A @ B2 ) ) ) ).

% PowI
thf(fact_199_Pow__iff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( member @ ( set @ A ) @ A3 @ ( pow @ A @ B2 ) )
      = ( ord_less_eq @ ( set @ A ) @ A3 @ B2 ) ) ).

% Pow_iff
thf(fact_200_finite__Plus__UNIV__iff,axiom,
    ! [A: $tType,B: $tType] :
      ( ( finite_finite2 @ ( sum_sum @ A @ B ) @ ( top_top @ ( set @ ( sum_sum @ A @ B ) ) ) )
      = ( ( finite_finite2 @ A @ ( top_top @ ( set @ A ) ) )
        & ( finite_finite2 @ B @ ( top_top @ ( set @ B ) ) ) ) ) ).

% finite_Plus_UNIV_iff
thf(fact_201_Sup__empty,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ( ( complete_Sup_Sup @ A @ ( bot_bot @ ( set @ A ) ) )
        = ( bot_bot @ A ) ) ) ).

% Sup_empty
thf(fact_202_Inf__empty,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ( ( complete_Inf_Inf @ A @ ( bot_bot @ ( set @ A ) ) )
        = ( top_top @ A ) ) ) ).

% Inf_empty
thf(fact_203_Diff__eq__empty__iff,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ( minus_minus @ ( set @ A ) @ A3 @ B2 )
        = ( bot_bot @ ( set @ A ) ) )
      = ( ord_less_eq @ ( set @ A ) @ A3 @ B2 ) ) ).

% Diff_eq_empty_iff
thf(fact_204_Diff__disjoint,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( inf_inf @ ( set @ A ) @ A3 @ ( minus_minus @ ( set @ A ) @ B2 @ A3 ) )
      = ( bot_bot @ ( set @ A ) ) ) ).

% Diff_disjoint
thf(fact_205_greaterThan__subset__iff,axiom,
    ! [A: $tType] :
      ( ( linorder @ A @ ( type2 @ A ) )
     => ! [X3: A,Y: A] :
          ( ( ord_less_eq @ ( set @ A ) @ ( set_ord_greaterThan @ A @ X3 ) @ ( set_ord_greaterThan @ A @ Y ) )
          = ( ord_less_eq @ A @ Y @ X3 ) ) ) ).

% greaterThan_subset_iff
thf(fact_206_Inter__UNIV,axiom,
    ! [A: $tType] :
      ( ( complete_Inf_Inf @ ( set @ A ) @ ( top_top @ ( set @ ( set @ A ) ) ) )
      = ( bot_bot @ ( set @ A ) ) ) ).

% Inter_UNIV
thf(fact_207_Union__UNIV,axiom,
    ! [A: $tType] :
      ( ( complete_Sup_Sup @ ( set @ A ) @ ( top_top @ ( set @ ( set @ A ) ) ) )
      = ( top_top @ ( set @ A ) ) ) ).

% Union_UNIV
thf(fact_208_Union__mono,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),B2: set @ ( set @ A )] :
      ( ( ord_less_eq @ ( set @ ( set @ A ) ) @ A3 @ B2 )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) @ ( complete_Sup_Sup @ ( set @ A ) @ B2 ) ) ) ).

% Union_mono
thf(fact_209_Inter__empty,axiom,
    ! [A: $tType] :
      ( ( complete_Inf_Inf @ ( set @ A ) @ ( bot_bot @ ( set @ ( set @ A ) ) ) )
      = ( top_top @ ( set @ A ) ) ) ).

% Inter_empty
thf(fact_210_Inter__lower,axiom,
    ! [A: $tType,B2: set @ A,A3: set @ ( set @ A )] :
      ( ( member @ ( set @ A ) @ B2 @ A3 )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) @ B2 ) ) ).

% Inter_lower
thf(fact_211_Union__empty,axiom,
    ! [A: $tType] :
      ( ( complete_Sup_Sup @ ( set @ A ) @ ( bot_bot @ ( set @ ( set @ A ) ) ) )
      = ( bot_bot @ ( set @ A ) ) ) ).

% Union_empty
thf(fact_212_Union__least,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),C: set @ A] :
      ( ! [X6: set @ A] :
          ( ( member @ ( set @ A ) @ X6 @ A3 )
         => ( ord_less_eq @ ( set @ A ) @ X6 @ C ) )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) @ C ) ) ).

% Union_least
thf(fact_213_Union__upper,axiom,
    ! [A: $tType,B2: set @ A,A3: set @ ( set @ A )] :
      ( ( member @ ( set @ A ) @ B2 @ A3 )
     => ( ord_less_eq @ ( set @ A ) @ B2 @ ( complete_Sup_Sup @ ( set @ A ) @ A3 ) ) ) ).

% Union_upper
thf(fact_214_Inter__subset,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),B2: set @ A] :
      ( ! [X6: set @ A] :
          ( ( member @ ( set @ A ) @ X6 @ A3 )
         => ( ord_less_eq @ ( set @ A ) @ X6 @ B2 ) )
     => ( ( A3
         != ( bot_bot @ ( set @ ( set @ A ) ) ) )
       => ( ord_less_eq @ ( set @ A ) @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) @ B2 ) ) ) ).

% Inter_subset
thf(fact_215_Inter__greatest,axiom,
    ! [A: $tType,A3: set @ ( set @ A ),C: set @ A] :
      ( ! [X6: set @ A] :
          ( ( member @ ( set @ A ) @ X6 @ A3 )
         => ( ord_less_eq @ ( set @ A ) @ C @ X6 ) )
     => ( ord_less_eq @ ( set @ A ) @ C @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) ) ) ).

% Inter_greatest
thf(fact_216_Inter__anti__mono,axiom,
    ! [A: $tType,B2: set @ ( set @ A ),A3: set @ ( set @ A )] :
      ( ( ord_less_eq @ ( set @ ( set @ A ) ) @ B2 @ A3 )
     => ( ord_less_eq @ ( set @ A ) @ ( complete_Inf_Inf @ ( set @ A ) @ A3 ) @ ( complete_Inf_Inf @ ( set @ A ) @ B2 ) ) ) ).

% Inter_anti_mono
thf(fact_217_Union__empty__conv,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( ( complete_Sup_Sup @ ( set @ A ) @ A3 )
        = ( bot_bot @ ( set @ A ) ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A3 )
           => ( X4
              = ( bot_bot @ ( set @ A ) ) ) ) ) ) ).

% Union_empty_conv
thf(fact_218_empty__Union__conv,axiom,
    ! [A: $tType,A3: set @ ( set @ A )] :
      ( ( ( bot_bot @ ( set @ A ) )
        = ( complete_Sup_Sup @ ( set @ A ) @ A3 ) )
      = ( ! [X4: set @ A] :
            ( ( member @ ( set @ A ) @ X4 @ A3 )
           => ( X4
              = ( bot_bot @ ( set @ A ) ) ) ) ) ) ).

% empty_Union_conv
thf(fact_219_cInf__eq,axiom,
    ! [A: $tType] :
      ( ( ( condit378418413attice @ A @ ( type2 @ A ) )
        & ( no_top @ A @ ( type2 @ A ) ) )
     => ! [X5: set @ A,A4: A] :
          ( ! [X: A] :
              ( ( member @ A @ X @ X5 )
             => ( ord_less_eq @ A @ A4 @ X ) )
         => ( ! [Y3: A] :
                ( ! [X2: A] :
                    ( ( member @ A @ X2 @ X5 )
                   => ( ord_less_eq @ A @ Y3 @ X2 ) )
               => ( ord_less_eq @ A @ Y3 @ A4 ) )
           => ( ( complete_Inf_Inf @ A @ X5 )
              = A4 ) ) ) ) ).

% cInf_eq
thf(fact_220_cSup__eq,axiom,
    ! [A: $tType] :
      ( ( ( condit378418413attice @ A @ ( type2 @ A ) )
        & ( no_bot @ A @ ( type2 @ A ) ) )
     => ! [X5: set @ A,A4: A] :
          ( ! [X: A] :
              ( ( member @ A @ X @ X5 )
             => ( ord_less_eq @ A @ X @ A4 ) )
         => ( ! [Y3: A] :
                ( ! [X2: A] :
                    ( ( member @ A @ X2 @ X5 )
                   => ( ord_less_eq @ A @ X2 @ Y3 ) )
               => ( ord_less_eq @ A @ A4 @ Y3 ) )
           => ( ( complete_Sup_Sup @ A @ X5 )
              = A4 ) ) ) ) ).

% cSup_eq
thf(fact_221_Inf__eqI,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,X3: A] :
          ( ! [I: A] :
              ( ( member @ A @ I @ A3 )
             => ( ord_less_eq @ A @ X3 @ I ) )
         => ( ! [Y3: A] :
                ( ! [I2: A] :
                    ( ( member @ A @ I2 @ A3 )
                   => ( ord_less_eq @ A @ Y3 @ I2 ) )
               => ( ord_less_eq @ A @ Y3 @ X3 ) )
           => ( ( complete_Inf_Inf @ A @ A3 )
              = X3 ) ) ) ) ).

% Inf_eqI
thf(fact_222_Sup__eqI,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,X3: A] :
          ( ! [Y3: A] :
              ( ( member @ A @ Y3 @ A3 )
             => ( ord_less_eq @ A @ Y3 @ X3 ) )
         => ( ! [Y3: A] :
                ( ! [Z3: A] :
                    ( ( member @ A @ Z3 @ A3 )
                   => ( ord_less_eq @ A @ Z3 @ Y3 ) )
               => ( ord_less_eq @ A @ X3 @ Y3 ) )
           => ( ( complete_Sup_Sup @ A @ A3 )
              = X3 ) ) ) ) ).

% Sup_eqI
thf(fact_223_Inf__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [B2: set @ A,A3: set @ A] :
          ( ! [B6: A] :
              ( ( member @ A @ B6 @ B2 )
             => ? [X2: A] :
                  ( ( member @ A @ X2 @ A3 )
                  & ( ord_less_eq @ A @ X2 @ B6 ) ) )
         => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ ( complete_Inf_Inf @ A @ B2 ) ) ) ) ).

% Inf_mono
thf(fact_224_Sup__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: set @ A] :
          ( ! [A6: A] :
              ( ( member @ A @ A6 @ A3 )
             => ? [X2: A] :
                  ( ( member @ A @ X2 @ B2 )
                  & ( ord_less_eq @ A @ A6 @ X2 ) ) )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A3 ) @ ( complete_Sup_Sup @ A @ B2 ) ) ) ) ).

% Sup_mono
thf(fact_225_Inf__lower,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X3: A,A3: set @ A] :
          ( ( member @ A @ X3 @ A3 )
         => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ X3 ) ) ) ).

% Inf_lower
thf(fact_226_Sup__least,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,Z: A] :
          ( ! [X: A] :
              ( ( member @ A @ X @ A3 )
             => ( ord_less_eq @ A @ X @ Z ) )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A3 ) @ Z ) ) ) ).

% Sup_least
thf(fact_227_Sup__upper,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [X3: A,A3: set @ A] :
          ( ( member @ A @ X3 @ A3 )
         => ( ord_less_eq @ A @ X3 @ ( complete_Sup_Sup @ A @ A3 ) ) ) ) ).

% Sup_upper
thf(fact_228_Inf__le__Sup,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A] :
          ( ( A3
           != ( bot_bot @ ( set @ A ) ) )
         => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ ( complete_Sup_Sup @ A @ A3 ) ) ) ) ).

% Inf_le_Sup
thf(fact_229_Inf__lower2,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [U: A,A3: set @ A,V: A] :
          ( ( member @ A @ U @ A3 )
         => ( ( ord_less_eq @ A @ U @ V )
           => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ V ) ) ) ) ).

% Inf_lower2
thf(fact_230_Sup__le__iff,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B4: A] :
          ( ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A3 ) @ B4 )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( ord_less_eq @ A @ X4 @ B4 ) ) ) ) ) ).

% Sup_le_iff
thf(fact_231_Sup__upper2,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [U: A,A3: set @ A,V: A] :
          ( ( member @ A @ U @ A3 )
         => ( ( ord_less_eq @ A @ V @ U )
           => ( ord_less_eq @ A @ V @ ( complete_Sup_Sup @ A @ A3 ) ) ) ) ) ).

% Sup_upper2
thf(fact_232_le__Inf__iff,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [B4: A,A3: set @ A] :
          ( ( ord_less_eq @ A @ B4 @ ( complete_Inf_Inf @ A @ A3 ) )
          = ( ! [X4: A] :
                ( ( member @ A @ X4 @ A3 )
               => ( ord_less_eq @ A @ B4 @ X4 ) ) ) ) ) ).

% le_Inf_iff
thf(fact_233_Inf__less__eq,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,U: A] :
          ( ! [V2: A] :
              ( ( member @ A @ V2 @ A3 )
             => ( ord_less_eq @ A @ V2 @ U ) )
         => ( ( A3
             != ( bot_bot @ ( set @ A ) ) )
           => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ U ) ) ) ) ).

% Inf_less_eq
thf(fact_234_less__eq__Sup,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,U: A] :
          ( ! [V2: A] :
              ( ( member @ A @ V2 @ A3 )
             => ( ord_less_eq @ A @ U @ V2 ) )
         => ( ( A3
             != ( bot_bot @ ( set @ A ) ) )
           => ( ord_less_eq @ A @ U @ ( complete_Sup_Sup @ A @ A3 ) ) ) ) ) ).

% less_eq_Sup
thf(fact_235_Inf__greatest,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,Z: A] :
          ( ! [X: A] :
              ( ( member @ A @ X @ A3 )
             => ( ord_less_eq @ A @ Z @ X ) )
         => ( ord_less_eq @ A @ Z @ ( complete_Inf_Inf @ A @ A3 ) ) ) ) ).

% Inf_greatest
thf(fact_236_Sup__subset__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [A3: set @ A,B2: set @ A] :
          ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
         => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ A3 ) @ ( complete_Sup_Sup @ A @ B2 ) ) ) ) ).

% Sup_subset_mono
thf(fact_237_Inf__superset__mono,axiom,
    ! [A: $tType] :
      ( ( comple187826305attice @ A @ ( type2 @ A ) )
     => ! [B2: set @ A,A3: set @ A] :
          ( ( ord_less_eq @ ( set @ A ) @ B2 @ A3 )
         => ( ord_less_eq @ A @ ( complete_Inf_Inf @ A @ A3 ) @ ( complete_Inf_Inf @ A @ B2 ) ) ) ) ).

% Inf_superset_mono
thf(fact_238_cSup__least,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [X5: set @ A,Z: A] :
          ( ( X5
           != ( bot_bot @ ( set @ A ) ) )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ X @ Z ) )
           => ( ord_less_eq @ A @ ( complete_Sup_Sup @ A @ X5 ) @ Z ) ) ) ) ).

% cSup_least
thf(fact_239_cInf__greatest,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [X5: set @ A,Z: A] :
          ( ( X5
           != ( bot_bot @ ( set @ A ) ) )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ Z @ X ) )
           => ( ord_less_eq @ A @ Z @ ( complete_Inf_Inf @ A @ X5 ) ) ) ) ) ).

% cInf_greatest
thf(fact_240_cInf__eq__minimum,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [Z: A,X5: set @ A] :
          ( ( member @ A @ Z @ X5 )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ Z @ X ) )
           => ( ( complete_Inf_Inf @ A @ X5 )
              = Z ) ) ) ) ).

% cInf_eq_minimum
thf(fact_241_cSup__eq__maximum,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [Z: A,X5: set @ A] :
          ( ( member @ A @ Z @ X5 )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ X @ Z ) )
           => ( ( complete_Sup_Sup @ A @ X5 )
              = Z ) ) ) ) ).

% cSup_eq_maximum
thf(fact_242_cInf__eq__non__empty,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [X5: set @ A,A4: A] :
          ( ( X5
           != ( bot_bot @ ( set @ A ) ) )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ A4 @ X ) )
           => ( ! [Y3: A] :
                  ( ! [X2: A] :
                      ( ( member @ A @ X2 @ X5 )
                     => ( ord_less_eq @ A @ Y3 @ X2 ) )
                 => ( ord_less_eq @ A @ Y3 @ A4 ) )
             => ( ( complete_Inf_Inf @ A @ X5 )
                = A4 ) ) ) ) ) ).

% cInf_eq_non_empty
thf(fact_243_cSup__eq__non__empty,axiom,
    ! [A: $tType] :
      ( ( condit378418413attice @ A @ ( type2 @ A ) )
     => ! [X5: set @ A,A4: A] :
          ( ( X5
           != ( bot_bot @ ( set @ A ) ) )
         => ( ! [X: A] :
                ( ( member @ A @ X @ X5 )
               => ( ord_less_eq @ A @ X @ A4 ) )
           => ( ! [Y3: A] :
                  ( ! [X2: A] :
                      ( ( member @ A @ X2 @ X5 )
                     => ( ord_less_eq @ A @ X2 @ Y3 ) )
                 => ( ord_less_eq @ A @ A4 @ Y3 ) )
             => ( ( complete_Sup_Sup @ A @ X5 )
                = A4 ) ) ) ) ) ).

% cSup_eq_non_empty
thf(fact_244_greaterThan__non__empty,axiom,
    ! [A: $tType] :
      ( ( no_top @ A @ ( type2 @ A ) )
     => ! [X3: A] :
          ( ( set_ord_greaterThan @ A @ X3 )
         != ( bot_bot @ ( set @ A ) ) ) ) ).

% greaterThan_non_empty
thf(fact_245_fold__graph_OemptyI,axiom,
    ! [A: $tType,B: $tType,F2: A > B > B,Z: B] : ( finite_fold_graph @ A @ B @ F2 @ Z @ ( bot_bot @ ( set @ A ) ) @ Z ) ).

% fold_graph.emptyI
thf(fact_246_empty__fold__graphE,axiom,
    ! [A: $tType,B: $tType,F2: A > B > B,Z: B,X3: B] :
      ( ( finite_fold_graph @ A @ B @ F2 @ Z @ ( bot_bot @ ( set @ A ) ) @ X3 )
     => ( X3 = Z ) ) ).

% empty_fold_graphE
thf(fact_247_Pow__mono,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
     => ( ord_less_eq @ ( set @ ( set @ A ) ) @ ( pow @ A @ A3 ) @ ( pow @ A @ B2 ) ) ) ).

% Pow_mono
thf(fact_248_Collect__mono__iff,axiom,
    ! [A: $tType,P: A > $o,Q: A > $o] :
      ( ( ord_less_eq @ ( set @ A ) @ ( collect @ A @ P ) @ ( collect @ A @ Q ) )
      = ( ! [X4: A] :
            ( ( P @ X4 )
           => ( Q @ X4 ) ) ) ) ).

% Collect_mono_iff
thf(fact_249_empty__not__UNIV,axiom,
    ! [A: $tType] :
      ( ( bot_bot @ ( set @ A ) )
     != ( top_top @ ( set @ A ) ) ) ).

% empty_not_UNIV
thf(fact_250_contra__subsetD,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C2: A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
     => ( ~ ( member @ A @ C2 @ B2 )
       => ~ ( member @ A @ C2 @ A3 ) ) ) ).

% contra_subsetD
thf(fact_251_set__eq__subset,axiom,
    ! [A: $tType] :
      ( ( ^ [Y4: set @ A,Z4: set @ A] : Y4 = Z4 )
      = ( ^ [A2: set @ A,B3: set @ A] :
            ( ( ord_less_eq @ ( set @ A ) @ A2 @ B3 )
            & ( ord_less_eq @ ( set @ A ) @ B3 @ A2 ) ) ) ) ).

% set_eq_subset
thf(fact_252_subset__trans,axiom,
    ! [A: $tType,A3: set @ A,B2: set @ A,C: set @ A] :
      ( ( ord_less_eq @ ( set @ A ) @ A3 @ B2 )
     => ( ( ord_less_eq @ ( set @ A ) @ B2 @ C )
       => ( ord_less_eq @ ( set @ A ) @ A3 @ C ) ) ) ).

% subset_trans
thf(fact_253_Collect__mono,axiom,
    ! [A: $tType,P: A > $o,Q: A > $o] :
      ( ! [X: A] :
          ( ( P @ X )
         => ( Q @ X ) )
     => ( ord_less_eq @ ( set @ A ) @ ( collect @ A @ P ) @ ( collect @ A @ Q ) ) ) ).

% Collect_mono
thf(fact_254_subset__refl,axiom,
    ! [A: $tType,A3: set @ A] : ( ord_less_eq @ ( set @ A ) @ A3 @ A3 ) ).

% subset_refl
thf(fact_255_subset__UNIV,axiom,
    ! [A: $tType,A3: set @ A] : ( ord_less_eq @ ( set @ A ) @ A3 @ ( top_top @ ( set @ A ) ) ) ).

% subset_UNIV

%----Type constructors (51)
thf(tcon_HOL_Obool___Lattices_Obounded__lattice,axiom,
    bounded_lattice @ $o @ ( type2 @ $o ) ).

thf(tcon_Set_Oset___Lattices_Obounded__lattice_1,axiom,
    ! [A7: $tType] : ( bounded_lattice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_fun___Lattices_Obounded__lattice_2,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( bounded_lattice @ A8 @ ( type2 @ A8 ) )
     => ( bounded_lattice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Conditionally__Complete__Lattices_Oconditionally__complete__lattice,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( comple187826305attice @ A8 @ ( type2 @ A8 ) )
     => ( condit378418413attice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Obounded__semilattice__sup__bot,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( bounded_lattice @ A8 @ ( type2 @ A8 ) )
     => ( bounde1808546759up_bot @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Obounded__semilattice__inf__top,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( bounded_lattice @ A8 @ ( type2 @ A8 ) )
     => ( bounde1561333602nf_top @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Complete__Lattices_Ocomplete__lattice,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( comple187826305attice @ A8 @ ( type2 @ A8 ) )
     => ( comple187826305attice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Obounded__lattice__top,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( bounded_lattice @ A8 @ ( type2 @ A8 ) )
     => ( bounded_lattice_top @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Obounded__lattice__bot,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( bounded_lattice @ A8 @ ( type2 @ A8 ) )
     => ( bounded_lattice_bot @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Osemilattice__sup,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( semilattice_sup @ A8 @ ( type2 @ A8 ) )
     => ( semilattice_sup @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Osemilattice__inf,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( semilattice_inf @ A8 @ ( type2 @ A8 ) )
     => ( semilattice_inf @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Odistrib__lattice,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( distrib_lattice @ A8 @ ( type2 @ A8 ) )
     => ( distrib_lattice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Finite__Set_Ofinite,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( ( finite_finite @ A7 @ ( type2 @ A7 ) )
        & ( finite_finite @ A8 @ ( type2 @ A8 ) ) )
     => ( finite_finite @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Lattices_Olattice,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( lattice @ A8 @ ( type2 @ A8 ) )
     => ( lattice @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_fun___Groups_Ominus,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( minus @ A8 @ ( type2 @ A8 ) )
     => ( minus @ ( A7 > A8 ) @ ( type2 @ ( A7 > A8 ) ) ) ) ).

thf(tcon_Nat_Onat___Conditionally__Complete__Lattices_Oconditionally__complete__linorder,axiom,
    condit1037483654norder @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Conditionally__Complete__Lattices_Oconditionally__complete__lattice_3,axiom,
    condit378418413attice @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Groups_Ocancel__ab__semigroup__add,axiom,
    cancel146912293up_add @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Lattices_Osemilattice__sup_4,axiom,
    semilattice_sup @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Lattices_Osemilattice__inf_5,axiom,
    semilattice_inf @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Lattices_Odistrib__lattice_6,axiom,
    distrib_lattice @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Orderings_Olinorder,axiom,
    linorder @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Orderings_Ono__top,axiom,
    no_top @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Lattices_Olattice_7,axiom,
    lattice @ nat @ ( type2 @ nat ) ).

thf(tcon_Nat_Onat___Groups_Ominus_8,axiom,
    minus @ nat @ ( type2 @ nat ) ).

thf(tcon_Set_Oset___Conditionally__Complete__Lattices_Oconditionally__complete__lattice_9,axiom,
    ! [A7: $tType] : ( condit378418413attice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Obounded__semilattice__sup__bot_10,axiom,
    ! [A7: $tType] : ( bounde1808546759up_bot @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Obounded__semilattice__inf__top_11,axiom,
    ! [A7: $tType] : ( bounde1561333602nf_top @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Complete__Lattices_Ocomplete__lattice_12,axiom,
    ! [A7: $tType] : ( comple187826305attice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Obounded__lattice__top_13,axiom,
    ! [A7: $tType] : ( bounded_lattice_top @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Obounded__lattice__bot_14,axiom,
    ! [A7: $tType] : ( bounded_lattice_bot @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Osemilattice__sup_15,axiom,
    ! [A7: $tType] : ( semilattice_sup @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Osemilattice__inf_16,axiom,
    ! [A7: $tType] : ( semilattice_inf @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Odistrib__lattice_17,axiom,
    ! [A7: $tType] : ( distrib_lattice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Finite__Set_Ofinite_18,axiom,
    ! [A7: $tType] :
      ( ( finite_finite @ A7 @ ( type2 @ A7 ) )
     => ( finite_finite @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ) ).

thf(tcon_Set_Oset___Lattices_Olattice_19,axiom,
    ! [A7: $tType] : ( lattice @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_Set_Oset___Groups_Ominus_20,axiom,
    ! [A7: $tType] : ( minus @ ( set @ A7 ) @ ( type2 @ ( set @ A7 ) ) ) ).

thf(tcon_HOL_Obool___Conditionally__Complete__Lattices_Oconditionally__complete__lattice_21,axiom,
    condit378418413attice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Obounded__semilattice__sup__bot_22,axiom,
    bounde1808546759up_bot @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Obounded__semilattice__inf__top_23,axiom,
    bounde1561333602nf_top @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Complete__Lattices_Ocomplete__lattice_24,axiom,
    comple187826305attice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Obounded__lattice__top_25,axiom,
    bounded_lattice_top @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Obounded__lattice__bot_26,axiom,
    bounded_lattice_bot @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Osemilattice__sup_27,axiom,
    semilattice_sup @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Osemilattice__inf_28,axiom,
    semilattice_inf @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Odistrib__lattice_29,axiom,
    distrib_lattice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Orderings_Olinorder_30,axiom,
    linorder @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Finite__Set_Ofinite_31,axiom,
    finite_finite @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Olattice_32,axiom,
    lattice @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Groups_Ominus_33,axiom,
    minus @ $o @ ( type2 @ $o ) ).

thf(tcon_Sum__Type_Osum___Finite__Set_Ofinite_34,axiom,
    ! [A7: $tType,A8: $tType] :
      ( ( ( finite_finite @ A7 @ ( type2 @ A7 ) )
        & ( finite_finite @ A8 @ ( type2 @ A8 ) ) )
     => ( finite_finite @ ( sum_sum @ A7 @ A8 ) @ ( type2 @ ( sum_sum @ A7 @ A8 ) ) ) ) ).

%----Conjectures (1)
thf(conj_0,conjecture,
    finite_finite2 @ a @ ( huffma505251170phabet @ a @ t ) ).

%------------------------------------------------------------------------------